package com.sdry.mapper.jyy;

import java.util.List;
import java.util.Map;

import com.sdry.model.jyy.SimpleJyy;
import com.sdry.model.lz.Customer;

public interface SimpleMepper {

	/**
	 * 根据产品码查询精简库缓存区物料信息
	 * @param sqd
	 * @return 精简库实体集合
	 */
	public List<SimpleJyy> selectMaFromHc(String sqd);

	/**
	 * 查询库存是否存在同一库位、同一物料、同一批次的信息
	 * @param onlyCount 精简库实体
	 * @return 精简库实体
	 */
	public SimpleJyy selectByAll(SimpleJyy simpleJyy);

	/**
	 * 添加一条精简库存信息
	 * @param onlyCount 精简库实体
	 * @return 影响行数
	 */
	public int insertOnlyCount(SimpleJyy simpleJyy);

	/**
	 * 修改精简库存信息
	 * @param onlyCountAlredy 精简库实体
	 * @return 影响行数
	 */
	public int updateOnlyCount(SimpleJyy simpleJyy);

	/**
	 * 为下架在库存中根据物料产品码和库位查询
	 * @param onlyCount 精简库实体
	 * @return 精简库实体集合
	 */
	public List<SimpleJyy> selectMaFromDown(SimpleJyy simpleJyy);

	/**
	 * 下架
	 * @param onlyCount 精简库实体
	 * @return 影响行数
	 */
	public int simpleDown(SimpleJyy simpleJyy);

	/**
	 * 在批量库存中查询所有未拆箱的物料及数量 根据供应商id
	 * @param map 供应商id
	 * @return 库存实体集合
	 */
	public List<SimpleJyy> selectPackingMa(Map<String, Object> map);

	/**拆箱下架*/
	public int simpleDown2(SimpleJyy simpleJyy);

	/**
	 * 根据条件分页查询批量库存
	 * @param simpleJyy 条件
	 * @return 库存实体集合
	 */
	public List<SimpleJyy> findSimpleJyyPageByMution(SimpleJyy simpleJyy);
	/**
	 * 根据条件查询批量库存条数（配合分页）
	 * @param simpleJyy 条件
	 * @return 条数
	 */
	public Integer selectSimpleJyyCountByMution(SimpleJyy simpleJyy);
	
	/**
	 * 根据条码类型查询供应商(条码类型为：无条码)
	 * @return 供应商实体集合
	 */
	public List<Customer> selectAllCustomerListByCodeType(Long warehouse_id);
	
	/**
	 * 根据条码类型查询供应商(条码类型为：系统码或供应商码)
	 * @return 供应商实体集合
	 */
	public List<Customer> selectAllCustomerListByCodeType2(Long warehouse_id);

	/**
	 * 查询库位存不存在
	 * @param location 库位编号
	 * @return
	 */
	public int countLocation(String location);
}
